const express = require('express')
const Router = express.Router()
const query = require('./db')
const path = require('path')
const multer = require('multer')


// 设置上传文件的配置
let storage = multer.diskStorage({
    // 上传文件保存目录，无则自动创建
    // 要放到后端的static文件夹中
    destination: path.join(__dirname, '../static/images/uploadTest'),
    // 格式化文件名与后缀名
    filename: (req, file, cb) => {
        // req请求对象
        // file 文件
        // cb 回调函数，用于确认文件名
        // file.originalname 上传的原文件的名称加上后缀的
        // file.fieldname formdata数据中存放文件的属性 avatar
        let ext = path.extname(file.originalname)
        cb(null, file.originalname);
    }
})
// 使用配置
let upload = multer({ storage })

module.exports = Router

/**
 * 上传组件测试
 */
Router.post('/uploadFile', upload.single('file'), async (req, res) => {
    try {
        let file = req.file
        console.log('file', file);

        // let { user_id } = req.body
        let imgurl = `${process.env.BASE_URL}/images/uploadTest/` + file.originalname;
        // let data = await query(`update user set user_avatar='${imgurl}' where user_id=${user_id}`)
        res.send({
            code: 200,
            msg: '上传成功',
            imgurl
        })
    } catch (error) {
        console.log(error);
        res.send({
            code: 0,
            error
        })
    }
})